小编Zhe*_*den的帖子

c ++如何为同一成员创建公共访问者和受保护访问者

如果我有两个方法 - 一个public,一个protected返回对同一个成员的引用,我得到以下编译错误:

'Server::getManager': cannot access protected member declared in class 'Server'
Run Code Online (Sandbox Code Playgroud)

当我注释掉受保护的功能时,代码可以工作.你能告诉我为什么会这样吗?为什么编译器找不到同一个成员的公共函数?

class Manager
    {
    };

class Server
{
public:
    const Manager & getManager() const { return m_man; }
protected:
    Manager & getManager() { return m_man;  } // <-- after removing this method I get no compilation error

private:

    Manager m_man;
};

int main()
{

    Server s;
    const Manager& m = s.getManager();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ public-method

6
推荐指数
1
解决办法
161
查看次数

Three.js绘制简单的三角形

我正在尝试用three.js绘制三角形:

var scene = new THREE.Scene();

var camera = new THREE.PerspectiveCamera( 40, window.innerWidth / window.innerHeight, 1, 1000 );
camera.position.z = 100;
scene.add( camera );

var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild( renderer.domElement );

var geom = new THREE.Geometry();
var v1 = new THREE.Vector3(0,0,0);
var v2 = new THREE.Vector3(30,0,0);
var v3 = new THREE.Vector3(30,30,0);

console.log(geom.vertices)
geom.vertices.push(new THREE.Vertex(v1));
geom.vertices.push(new THREE.Vertex(v2));
geom.vertices.push(new THREE.Vertex(v3));

geom.faces.push( new THREE.Face3( 0, 1, 2 ) );
geom.computeFaceNormals();

var mesh= new THREE.Mesh( geom, new THREE.MeshNormalMaterial() );
scene.add(mesh);

renderer.render( …
Run Code Online (Sandbox Code Playgroud)

javascript three.js

5
推荐指数
1
解决办法
1万
查看次数

THREE.TrackballControls旋转中心

我在场景中有1个对象,并希望相对于其轴旋转它.我使用THREE.TrackballControls.但是当我的物体不在屏幕中心时,旋转不好(它相对于屏幕中心旋转).在创建控件之前,我尝试更改相机位置.但它没有用.

    var scene = new THREE.Scene();
    var camera = new THREE.PerspectiveCamera(75, 1, 0.1, 1000);
    camera.position.z = 3;
    camera.position.y = 10;

    controls = new THREE.TrackballControls( camera );
Run Code Online (Sandbox Code Playgroud)

是否可以在TrackballControls中指定相机旋转的中心?(因此物体将旋转不是相对中心的场景)

谢谢,振亚

javascript 3d three.js

5
推荐指数
1
解决办法
3554
查看次数

比较Windows批处理文件中的2个日期

如何比较批处理文件中的2个日期?这个:

if %%newdate geq %olddate%  _do smth_
Run Code Online (Sandbox Code Playgroud)

不起作用.

在这种情况下,我有一个
27.05.2013大于 15.07.2013并且
14.07.2013小于 15.07.2013

振亚

windows cmd if-statement date batch-file

2
推荐指数
1
解决办法
2万
查看次数

如何创建多线程DLL

我有Dll从磁盘读取文件并返回它的内容:

mydll.h:

extern "C" __declspec(dllexport) void InitFile3dPoints(wchar_t* i_file);
extern "C" __declspec(dllexport) int GetNumPointsForSurface(int i_surf_index);
extern "C" __declspec(dllexport) void GetPointsForSurface
    (double* o_result, int i_resultLength, int i_surf_index);
Run Code Online (Sandbox Code Playgroud)

mydll.cpp:

File3dPoints file_3dPoints;

void InitFile3dPoints(wchar_t* i_file) 
          { file_3dPoints = readFile3dObjectFromDisk(i_file) }
int GetNumPointsForSurface(int i_surf_index) 
          { return file_3dPoints[i_surf_index].getNumPoints(); }

void GetPointsForSurface(double* o_result, int i_resultLength, int i_surf_index);
{
  const int num_points = file_3dPoints[i_surf_index].getNumPoints();
  if (num_points < i_resultLength)
    return;

  for (int i = 0; i < num_points; ++i)
    o_result[i] = file_3dPoints[i_surf_index].getPoint(i);
}
Run Code Online (Sandbox Code Playgroud)

client.cs:

IntPtr inst = LoadLibrary("mydll.dll");
InitFile3dPoints(filename); …
Run Code Online (Sandbox Code Playgroud)

.net c# c++ dll multithreading

1
推荐指数
1
解决办法
2479
查看次数

c ++ GetCurrentThemeName为经典窗口主题返回空值

当我打电话GetCurrentThemeName()给Windows 7 Basic风格时,我得到"C:\ windows\resources\Themes\Aero\Aero.msstyles",但是当我将其称为Windows经典风格或Windows高对比度风格时,我得到空洞的刺痛.

这是预期的吗?

如何在C++应用程序中区分Windows经典风格和Windows高对比度风格?

谢谢,振亚

c++ windows winapi

1
推荐指数
1
解决办法
415
查看次数

Matlab计算三维相似变换.fitgeotrans for 3D

如何计算3D中4点之间的MatLab相似度变换?我可以从中计算变换矩阵

T*X = Xp,

但由于点坐标误差很小,它会给我仿射矩阵.我怎样才能将该矩阵与相似矩阵相匹配?我需要类似的东西fitgeotrans,但需要3D

谢谢

matlab transformation similarity affinetransform rotational-matrices

1
推荐指数
1
解决办法
3775
查看次数

java根据键列表从immutablemap获取排序值

我有ImmutableMap<String, Integer>List<String>那定义了订单.我希望得到ImmutableList<Integer>那个订单.例如:

map (<"a", 66>, <"kk", 2>, <"m", 8>) 

list ["kk", "m", "a"]
Run Code Online (Sandbox Code Playgroud)

结果我想要从给定列表中定义订单的另一个值列表:[2, 8, 66].

在java中执行此操作的最佳方法是什么?

java

0
推荐指数
1
解决办法
326
查看次数