小编ice*_*ice的帖子

为什么for_each不能在这里选择正确的印刷品

我写了一个打印模板函数,打印"True""False"为bool类型值.

我试图将它应用于for_each算法,但它不起作用.

输出仍然是01.似乎模板专业化不起作用for_each.怎么会发生这种情况?

如何使代码按预期工作?

#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <ctime>

using namespace std;

template <typename T>
void _print(const T& i)
{
    cout<<i<<endl;
}
template <>
void _print<bool>(const bool& i)
{
    if (i == 0)
        cout<<"False"<<endl;
    else
        cout<<"True"<<endl;
}

class print
{
public:
  template <typename T>
  void operator()(const T& val) const { _print(val); };
};

int main()
{
  auto even = [&](int i)->bool{return (i%2==0);};
  srand(time(NULL)); …
Run Code Online (Sandbox Code Playgroud)

c++ templates

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

Haskell OpenGL 绑定中似乎有一个错误

我编写了一个程序来可视化氢原子的电子云。

import System.Exit 
import Graphics.UI.GLUT
probDensity :: Double -> Double
probDensity r = abs $ (1 - r) * exp (-r/2.0)

myInit :: IO ()
myInit = clearColor $= Color4 1 1 1 0

grid :: [(GLint,GLint)]
grid = [(x,y) | x <- [-200..200],y <- [-200..200]]

density :: [Double]
density = map (\(i',j') -> probDensity $ sqrt $ (fromIntegral i' ** 2 + fromIntegral j' ** 2 ) / 324) grid

cloud = zip density grid

display :: DisplayCallback
display …
Run Code Online (Sandbox Code Playgroud)

opengl haskell

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

标签 统计

c++ ×1

haskell ×1

opengl ×1

templates ×1