VS下出现Error: no instance of overloaded function


geom->trianngles.push_back(trianngle);

.push_back的点那边VS标红,显示:
img
std:vector < std:shared ptr < Trianngle>,std:allocator < std:shared ptr < Trianngle>> > Geom:trianngles
一个geom中的所有三角形信息

Error: no instance of overloaded function "std:vector<. Ty, Alloc> :push. back [with Ty= std:shared ptr ,_ Alloc=std:allocato < std:shared ptr< Trianngle > >]" matches the argument list
argument types are: (Trianngle *)
object type is: std:vector < std:shared. ptr, std:allocator < std;:shared ptr>>

img
可能和此问题类似
改为

struct foo
{
    vector<foo *> cntns;

    void createLink(foo * i2)
    {
        this->cntns.push_back(i2);
        i2->cntns.push_back(this);
    }
};