我们已经使用Boost构建了一个实例库,当我们尝试将该库集成到二进制文件中时,由于用于构建二进制文件的“-- C++ =explicit”选项,我们在链接时遇到了问题。问题是,当我们使用( Sun CC编译器的) --instances=explicit选项时,它希望我们显式地实例化模板。当Boost在内部使用模板时,链接器会抛出“未定义的符号”错误--这是意料之中的,因为我们没有显式实例化Boost中使用的模板。虽然我理解链接器在这里抛出错误的原因,但在代码中显式实例化所有boost模板看起来很棘手。
我正在尝试为C中的结构构建一个类似构造函数的函数。我最擅长使用围绕面向对象特性构建的语言,而将面向对象特性添加到基本的语言中并不是我的强项。然而,不幸的是,对于这个项目,我不得不使用C的一个变体。最大的问题是,我需要使用的C语言的变体在功能上非常有限。在其他方面,它似乎没有动态内存分配。newStruct(string name, int a, string b){ name.a = a;}
这是行不通的,